package com.shejimoshi.单例模式.懒汉模式.懒汉式变种;

/**
 * 优点： 懒加载，节约内存空间，线程安全
 * 缺点： 效率低， synchronized对整个getInstance()方法都进行了同步， 每次只有一个线程能够进入该方法，并发性极差
 */
public class Singleton {
    private static Singleton singleton;

    private Singleton() {};

    // 使用了synchronized使得线程的初始化线程安全
    public synchronized Singleton getInstance() {
        if(null == singleton) {
            singleton = new Singleton();
        }

        return singleton;
    }
}
